\hypertarget{classCPacketBuilder}{
\section{\-C\-Packet\-Builder \-Class \-Reference}
\label{classCPacketBuilder}\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}}
}


{\ttfamily \#include $<$packet\-\_\-builder.\-h$>$}

\-Inheritance diagram for \-C\-Packet\-Builder\-:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{classCPacketBuilder}
\end{center}
\end{figure}
\subsection*{\-Public \-Member \-Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{classCPacketBuilder_aee1a235efdbd190ca5d8f4a14e099bdc}{\-C\-Packet\-Builder} (\hyperlink{properties__reader_8h_a67847fd00cb49d80dd45f61722eb9a43}{\-C\-Properties\-Reader} $\ast$p\-Config, \hyperlink{classIPacketSource}{\-I\-Packet\-Source} $\ast$p\-Packet\-Source)
\item 
virtual \hyperlink{classCPacketBuilder_a4847309e73ddb3d2281a645971b33bec}{$\sim$\-C\-Packet\-Builder} ()
\item 
virtual \hyperlink{classIExtBitSource_aa0bbdedd57f84dedbe13dbf6bdff6f4a}{\-E\-Bit\-Value} \hyperlink{classCPacketBuilder_a83f920ecd9efcf50d53411a4eb346249}{get\-Bit} ()
\item 
virtual void \hyperlink{classCPacketBuilder_a23dc1c4a72fd2fc79ecd0fb6f2fc0569}{put\-Bit} (bool p\-Bit\-Value, bool p\-First\-Bit)
\item 
virtual unsigned int \hyperlink{classCPacketBuilder_ab50a7766db2735cdea1206cfe62d979a}{get\-Max\-Frame\-Length} ()
\end{DoxyCompactItemize}
\subsection*{\-Private \-Types}
\begin{DoxyCompactItemize}
\item 
enum \hyperlink{classCPacketBuilder_abbea5718fbb311af19e513aa96448c67}{\-E\-Send\-Packet\-State} \{ \hyperlink{classCPacketBuilder_abbea5718fbb311af19e513aa96448c67ab3c83e466ca00f07e2b89102e8fe5d9e}{\-S\-E\-N\-D\-\_\-\-S\-T\-A\-T\-E\-\_\-\-W\-A\-I\-T\-\_\-\-F\-O\-R\-\_\-\-N\-E\-X\-T} =  0, 
\hyperlink{classCPacketBuilder_abbea5718fbb311af19e513aa96448c67ae168dd464ea46a07eb3d06906da18617}{\-S\-E\-N\-D\-\_\-\-S\-T\-A\-T\-E\-\_\-\-N\-E\-X\-T\-\_\-\-I\-S\-\_\-\-R\-E\-A\-D\-Y}, 
\hyperlink{classCPacketBuilder_abbea5718fbb311af19e513aa96448c67aced1a5079f07e517a184e23f8ba7e069}{\-S\-E\-N\-D\-\_\-\-S\-T\-A\-T\-E\-\_\-\-P\-A\-C\-K\-E\-T}
 \}
\item 
enum \hyperlink{classCPacketBuilder_a5e3c5517522920fb21c8a161586ec4b3}{\-E\-Recv\-Packet\-State} \{ \hyperlink{classCPacketBuilder_a5e3c5517522920fb21c8a161586ec4b3ab927d9e368e3ee87fb66426ab7f19cde}{\-R\-E\-C\-V\-\_\-\-S\-T\-A\-T\-E\-\_\-\-W\-A\-I\-T\-\_\-\-F\-O\-R\-\_\-\-N\-E\-X\-T} =  0, 
\hyperlink{classCPacketBuilder_a5e3c5517522920fb21c8a161586ec4b3a6ff438ada675b4df7c9160acfccd70e6}{\-R\-E\-C\-V\-\_\-\-S\-T\-A\-T\-E\-\_\-\-B\-E\-G\-I\-N}, 
\hyperlink{classCPacketBuilder_a5e3c5517522920fb21c8a161586ec4b3a03b413fa49cc13538fc3b686d52523a1}{\-R\-E\-C\-V\-\_\-\-S\-T\-A\-T\-E\-\_\-\-L\-E\-N\-G\-T\-H\-\_\-\-F\-I\-E\-L\-D}, 
\hyperlink{classCPacketBuilder_a5e3c5517522920fb21c8a161586ec4b3a33a94928ba38794a2ccad48ccdb83129}{\-R\-E\-C\-V\-\_\-\-S\-T\-A\-T\-E\-\_\-\-P\-A\-Y\-L\-O\-A\-D}
 \}
\end{DoxyCompactItemize}
\subsection*{\-Private \-Member \-Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{namespaceNPacketSource_a41d32c941906c55fd056bc4be5e0c79b}{\-N\-Packet\-Source\-::\-E\-Payload\-Info} \hyperlink{classCPacketBuilder_a7f85bf7867f191dd3b70c96b7fa1c12b}{create\-Next\-Send\-Packet} ()
\item 
bool \hyperlink{classCPacketBuilder_a7a00dcb89b6af5670e6865b00cb0f8ca}{write\-Byte\-To\-Bool\-Vector} (std\-::vector$<$ bool $>$ \&p\-Vector, unsigned int p\-Start\-Index, unsigned char p\-Byte\-Value)
\item 
bool \hyperlink{classCPacketBuilder_a9c1f2a51958c83e346295d47d3eaf13d}{read\-Byte\-From\-Bool\-Vector} (std\-::vector$<$ bool $>$ \&p\-Vector, unsigned int p\-Start\-Index, unsigned char \&p\-Byte\-Value)
\item 
unsigned int \hyperlink{classCPacketBuilder_a0aecfdc83b0950d099668943b653d6d7}{read\-Bytes\-From\-Bool\-Vector} (std\-::vector$<$ bool $>$ \&p\-Vector, unsigned int p\-Start\-Index, void $\ast$p\-Bytes, unsigned int p\-Length)
\item 
\hyperlink{classCPacketBuilder_aceb1db7b2ad782c876d3e960d9f61cf8}{\-C\-Packet\-Builder} (const \hyperlink{classCPacketBuilder}{\-C\-Packet\-Builder} \&)
\item 
\hyperlink{classCPacketBuilder}{\-C\-Packet\-Builder} \& \hyperlink{classCPacketBuilder_a01cabb7ef3a4a759ba4f47748451bd19}{operator=} (const \hyperlink{classCPacketBuilder}{\-C\-Packet\-Builder} \&)
\end{DoxyCompactItemize}
\subsection*{\-Private \-Attributes}
\begin{DoxyCompactItemize}
\item 
bool \hyperlink{classCPacketBuilder_a5377d2447dd5b25a67c379248babc5ca}{m\-Error}
\item 
\hyperlink{properties__reader_8h_a67847fd00cb49d80dd45f61722eb9a43}{\-C\-Properties\-Reader} $\ast$ \hyperlink{classCPacketBuilder_aa4c1bff0467b28622b8c6133deb4b69d}{m\-Config}
\item 
\hyperlink{classIPacketSource}{\-I\-Packet\-Source} $\ast$ \hyperlink{classCPacketBuilder_abad2cce898f78d8c38fdb0b873f00dbb}{m\-Packet\-Source}
\item 
unsigned int \hyperlink{classCPacketBuilder_a5c5962a8091ba05b589b8788cd002ece}{m\-Max\-Payload}
\item 
bool \hyperlink{classCPacketBuilder_ab84ca95996b25526f36866ac5ae0f588}{m\-Ignore\-Wrong\-C\-R\-C}
\item 
\hyperlink{namespaceNPacketSource_a41d32c941906c55fd056bc4be5e0c79b}{\-N\-Packet\-Source\-::\-E\-Payload\-Info} \hyperlink{classCPacketBuilder_a134cb0e013ddf5ad34fbd9fe204ae632}{m\-Send\-Payload\-Info}
\item 
\hyperlink{classCPacketBuilder_abbea5718fbb311af19e513aa96448c67}{\-E\-Send\-Packet\-State} \hyperlink{classCPacketBuilder_a19b5eca0e74948e53cf55568ccddce8a}{m\-Send\-State}
\item 
std\-::vector$<$ bool $>$ \hyperlink{classCPacketBuilder_a441cf84e62698c8a0303083ab18dbb45}{m\-Send\-Packet}
\item 
unsigned int \hyperlink{classCPacketBuilder_af20c05841f12ae9386e7817bf9d794b9}{m\-Send\-Bit\-Count}
\item 
unsigned int \hyperlink{classCPacketBuilder_ab1aa160f71acd51cf7be170454b46416}{m\-Send\-Bit\-Index}
\item 
unsigned int \hyperlink{classCPacketBuilder_aab69009e195d44e0bb8776285f17d277}{m\-Send\-Payload\-Length}
\item 
\hyperlink{classCPacketBuilder_a5e3c5517522920fb21c8a161586ec4b3}{\-E\-Recv\-Packet\-State} \hyperlink{classCPacketBuilder_ad20f0d602233bceb8f739e59cd435953}{m\-Recv\-State}
\item 
std\-::vector$<$ bool $>$ \hyperlink{classCPacketBuilder_a84bca46dfb8d1488d52b3c5534c986a0}{m\-Recv\-Packet}
\item 
unsigned int \hyperlink{classCPacketBuilder_aaf25ffd0b42977833b58e2d6a9e395ea}{m\-Recv\-Bit\-Count}
\item 
unsigned int \hyperlink{classCPacketBuilder_a3d8ef51647f24a933a743ec2258fc008}{m\-Recv\-Bit\-Index}
\item 
unsigned int \hyperlink{classCPacketBuilder_a932a4a895d4bedb9b1c981714c481c55}{m\-Recv\-Payload\-Length}
\end{DoxyCompactItemize}
\subsection*{\-Static \-Private \-Attributes}
\begin{DoxyCompactItemize}
\item 
static const std\-::string \hyperlink{classCPacketBuilder_ad11538f861ae424701c94713341af1a1}{s\-Ini\-Section} = \char`\"{}\-P\-A\-C\-K\-E\-T\-\_\-\-B\-U\-I\-L\-D\-E\-R\char`\"{}
\end{DoxyCompactItemize}


\subsection{\-Member \-Enumeration \-Documentation}
\hypertarget{classCPacketBuilder_a5e3c5517522920fb21c8a161586ec4b3}{
\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!\-E\-Recv\-Packet\-State@{\-E\-Recv\-Packet\-State}}
\index{\-E\-Recv\-Packet\-State@{\-E\-Recv\-Packet\-State}!CPacketBuilder@{\-C\-Packet\-Builder}}
\subsubsection[{\-E\-Recv\-Packet\-State}]{\setlength{\rightskip}{0pt plus 5cm}enum {\bf \-C\-Packet\-Builder\-::\-E\-Recv\-Packet\-State}\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{classCPacketBuilder_a5e3c5517522920fb21c8a161586ec4b3}
\begin{Desc}
\item[\-Enumerator\-: ]\par
\begin{description}
\index{\-R\-E\-C\-V\-\_\-\-S\-T\-A\-T\-E\-\_\-\-W\-A\-I\-T\-\_\-\-F\-O\-R\-\_\-\-N\-E\-X\-T@{\-R\-E\-C\-V\-\_\-\-S\-T\-A\-T\-E\-\_\-\-W\-A\-I\-T\-\_\-\-F\-O\-R\-\_\-\-N\-E\-X\-T}!\-C\-Packet\-Builder@{\-C\-Packet\-Builder}}\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!\-R\-E\-C\-V\-\_\-\-S\-T\-A\-T\-E\-\_\-\-W\-A\-I\-T\-\_\-\-F\-O\-R\-\_\-\-N\-E\-X\-T@{\-R\-E\-C\-V\-\_\-\-S\-T\-A\-T\-E\-\_\-\-W\-A\-I\-T\-\_\-\-F\-O\-R\-\_\-\-N\-E\-X\-T}}\item[{\em 
\hypertarget{classCPacketBuilder_a5e3c5517522920fb21c8a161586ec4b3ab927d9e368e3ee87fb66426ab7f19cde}{
\-R\-E\-C\-V\-\_\-\-S\-T\-A\-T\-E\-\_\-\-W\-A\-I\-T\-\_\-\-F\-O\-R\-\_\-\-N\-E\-X\-T}
\label{classCPacketBuilder_a5e3c5517522920fb21c8a161586ec4b3ab927d9e368e3ee87fb66426ab7f19cde}
}]\index{\-R\-E\-C\-V\-\_\-\-S\-T\-A\-T\-E\-\_\-\-B\-E\-G\-I\-N@{\-R\-E\-C\-V\-\_\-\-S\-T\-A\-T\-E\-\_\-\-B\-E\-G\-I\-N}!\-C\-Packet\-Builder@{\-C\-Packet\-Builder}}\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!\-R\-E\-C\-V\-\_\-\-S\-T\-A\-T\-E\-\_\-\-B\-E\-G\-I\-N@{\-R\-E\-C\-V\-\_\-\-S\-T\-A\-T\-E\-\_\-\-B\-E\-G\-I\-N}}\item[{\em 
\hypertarget{classCPacketBuilder_a5e3c5517522920fb21c8a161586ec4b3a6ff438ada675b4df7c9160acfccd70e6}{
\-R\-E\-C\-V\-\_\-\-S\-T\-A\-T\-E\-\_\-\-B\-E\-G\-I\-N}
\label{classCPacketBuilder_a5e3c5517522920fb21c8a161586ec4b3a6ff438ada675b4df7c9160acfccd70e6}
}]\index{\-R\-E\-C\-V\-\_\-\-S\-T\-A\-T\-E\-\_\-\-L\-E\-N\-G\-T\-H\-\_\-\-F\-I\-E\-L\-D@{\-R\-E\-C\-V\-\_\-\-S\-T\-A\-T\-E\-\_\-\-L\-E\-N\-G\-T\-H\-\_\-\-F\-I\-E\-L\-D}!\-C\-Packet\-Builder@{\-C\-Packet\-Builder}}\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!\-R\-E\-C\-V\-\_\-\-S\-T\-A\-T\-E\-\_\-\-L\-E\-N\-G\-T\-H\-\_\-\-F\-I\-E\-L\-D@{\-R\-E\-C\-V\-\_\-\-S\-T\-A\-T\-E\-\_\-\-L\-E\-N\-G\-T\-H\-\_\-\-F\-I\-E\-L\-D}}\item[{\em 
\hypertarget{classCPacketBuilder_a5e3c5517522920fb21c8a161586ec4b3a03b413fa49cc13538fc3b686d52523a1}{
\-R\-E\-C\-V\-\_\-\-S\-T\-A\-T\-E\-\_\-\-L\-E\-N\-G\-T\-H\-\_\-\-F\-I\-E\-L\-D}
\label{classCPacketBuilder_a5e3c5517522920fb21c8a161586ec4b3a03b413fa49cc13538fc3b686d52523a1}
}]\index{\-R\-E\-C\-V\-\_\-\-S\-T\-A\-T\-E\-\_\-\-P\-A\-Y\-L\-O\-A\-D@{\-R\-E\-C\-V\-\_\-\-S\-T\-A\-T\-E\-\_\-\-P\-A\-Y\-L\-O\-A\-D}!\-C\-Packet\-Builder@{\-C\-Packet\-Builder}}\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!\-R\-E\-C\-V\-\_\-\-S\-T\-A\-T\-E\-\_\-\-P\-A\-Y\-L\-O\-A\-D@{\-R\-E\-C\-V\-\_\-\-S\-T\-A\-T\-E\-\_\-\-P\-A\-Y\-L\-O\-A\-D}}\item[{\em 
\hypertarget{classCPacketBuilder_a5e3c5517522920fb21c8a161586ec4b3a33a94928ba38794a2ccad48ccdb83129}{
\-R\-E\-C\-V\-\_\-\-S\-T\-A\-T\-E\-\_\-\-P\-A\-Y\-L\-O\-A\-D}
\label{classCPacketBuilder_a5e3c5517522920fb21c8a161586ec4b3a33a94928ba38794a2ccad48ccdb83129}
}]\end{description}
\end{Desc}

\hypertarget{classCPacketBuilder_abbea5718fbb311af19e513aa96448c67}{
\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!\-E\-Send\-Packet\-State@{\-E\-Send\-Packet\-State}}
\index{\-E\-Send\-Packet\-State@{\-E\-Send\-Packet\-State}!CPacketBuilder@{\-C\-Packet\-Builder}}
\subsubsection[{\-E\-Send\-Packet\-State}]{\setlength{\rightskip}{0pt plus 5cm}enum {\bf \-C\-Packet\-Builder\-::\-E\-Send\-Packet\-State}\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{classCPacketBuilder_abbea5718fbb311af19e513aa96448c67}
\begin{Desc}
\item[\-Enumerator\-: ]\par
\begin{description}
\index{\-S\-E\-N\-D\-\_\-\-S\-T\-A\-T\-E\-\_\-\-W\-A\-I\-T\-\_\-\-F\-O\-R\-\_\-\-N\-E\-X\-T@{\-S\-E\-N\-D\-\_\-\-S\-T\-A\-T\-E\-\_\-\-W\-A\-I\-T\-\_\-\-F\-O\-R\-\_\-\-N\-E\-X\-T}!\-C\-Packet\-Builder@{\-C\-Packet\-Builder}}\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!\-S\-E\-N\-D\-\_\-\-S\-T\-A\-T\-E\-\_\-\-W\-A\-I\-T\-\_\-\-F\-O\-R\-\_\-\-N\-E\-X\-T@{\-S\-E\-N\-D\-\_\-\-S\-T\-A\-T\-E\-\_\-\-W\-A\-I\-T\-\_\-\-F\-O\-R\-\_\-\-N\-E\-X\-T}}\item[{\em 
\hypertarget{classCPacketBuilder_abbea5718fbb311af19e513aa96448c67ab3c83e466ca00f07e2b89102e8fe5d9e}{
\-S\-E\-N\-D\-\_\-\-S\-T\-A\-T\-E\-\_\-\-W\-A\-I\-T\-\_\-\-F\-O\-R\-\_\-\-N\-E\-X\-T}
\label{classCPacketBuilder_abbea5718fbb311af19e513aa96448c67ab3c83e466ca00f07e2b89102e8fe5d9e}
}]\index{\-S\-E\-N\-D\-\_\-\-S\-T\-A\-T\-E\-\_\-\-N\-E\-X\-T\-\_\-\-I\-S\-\_\-\-R\-E\-A\-D\-Y@{\-S\-E\-N\-D\-\_\-\-S\-T\-A\-T\-E\-\_\-\-N\-E\-X\-T\-\_\-\-I\-S\-\_\-\-R\-E\-A\-D\-Y}!\-C\-Packet\-Builder@{\-C\-Packet\-Builder}}\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!\-S\-E\-N\-D\-\_\-\-S\-T\-A\-T\-E\-\_\-\-N\-E\-X\-T\-\_\-\-I\-S\-\_\-\-R\-E\-A\-D\-Y@{\-S\-E\-N\-D\-\_\-\-S\-T\-A\-T\-E\-\_\-\-N\-E\-X\-T\-\_\-\-I\-S\-\_\-\-R\-E\-A\-D\-Y}}\item[{\em 
\hypertarget{classCPacketBuilder_abbea5718fbb311af19e513aa96448c67ae168dd464ea46a07eb3d06906da18617}{
\-S\-E\-N\-D\-\_\-\-S\-T\-A\-T\-E\-\_\-\-N\-E\-X\-T\-\_\-\-I\-S\-\_\-\-R\-E\-A\-D\-Y}
\label{classCPacketBuilder_abbea5718fbb311af19e513aa96448c67ae168dd464ea46a07eb3d06906da18617}
}]\index{\-S\-E\-N\-D\-\_\-\-S\-T\-A\-T\-E\-\_\-\-P\-A\-C\-K\-E\-T@{\-S\-E\-N\-D\-\_\-\-S\-T\-A\-T\-E\-\_\-\-P\-A\-C\-K\-E\-T}!\-C\-Packet\-Builder@{\-C\-Packet\-Builder}}\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!\-S\-E\-N\-D\-\_\-\-S\-T\-A\-T\-E\-\_\-\-P\-A\-C\-K\-E\-T@{\-S\-E\-N\-D\-\_\-\-S\-T\-A\-T\-E\-\_\-\-P\-A\-C\-K\-E\-T}}\item[{\em 
\hypertarget{classCPacketBuilder_abbea5718fbb311af19e513aa96448c67aced1a5079f07e517a184e23f8ba7e069}{
\-S\-E\-N\-D\-\_\-\-S\-T\-A\-T\-E\-\_\-\-P\-A\-C\-K\-E\-T}
\label{classCPacketBuilder_abbea5718fbb311af19e513aa96448c67aced1a5079f07e517a184e23f8ba7e069}
}]\end{description}
\end{Desc}



\subsection{\-Constructor \& \-Destructor \-Documentation}
\hypertarget{classCPacketBuilder_aee1a235efdbd190ca5d8f4a14e099bdc}{
\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!\-C\-Packet\-Builder@{\-C\-Packet\-Builder}}
\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!CPacketBuilder@{\-C\-Packet\-Builder}}
\subsubsection[{\-C\-Packet\-Builder}]{\setlength{\rightskip}{0pt plus 5cm}\-C\-Packet\-Builder\-::\-C\-Packet\-Builder (
\begin{DoxyParamCaption}
\item[{{\bf \-C\-Properties\-Reader} $\ast$}]{p\-Config, }
\item[{{\bf \-I\-Packet\-Source} $\ast$}]{p\-Packet\-Source}
\end{DoxyParamCaption}
)}}
\label{classCPacketBuilder_aee1a235efdbd190ca5d8f4a14e099bdc}
\hypertarget{classCPacketBuilder_a4847309e73ddb3d2281a645971b33bec}{
\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!$\sim$\-C\-Packet\-Builder@{$\sim$\-C\-Packet\-Builder}}
\index{$\sim$\-C\-Packet\-Builder@{$\sim$\-C\-Packet\-Builder}!CPacketBuilder@{\-C\-Packet\-Builder}}
\subsubsection[{$\sim$\-C\-Packet\-Builder}]{\setlength{\rightskip}{0pt plus 5cm}\-C\-Packet\-Builder\-::$\sim$\-C\-Packet\-Builder (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{classCPacketBuilder_a4847309e73ddb3d2281a645971b33bec}
\hypertarget{classCPacketBuilder_aceb1db7b2ad782c876d3e960d9f61cf8}{
\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!\-C\-Packet\-Builder@{\-C\-Packet\-Builder}}
\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!CPacketBuilder@{\-C\-Packet\-Builder}}
\subsubsection[{\-C\-Packet\-Builder}]{\setlength{\rightskip}{0pt plus 5cm}\-C\-Packet\-Builder\-::\-C\-Packet\-Builder (
\begin{DoxyParamCaption}
\item[{const {\bf \-C\-Packet\-Builder} \&}]{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{classCPacketBuilder_aceb1db7b2ad782c876d3e960d9f61cf8}


\subsection{\-Member \-Function \-Documentation}
\hypertarget{classCPacketBuilder_a7f85bf7867f191dd3b70c96b7fa1c12b}{
\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!create\-Next\-Send\-Packet@{create\-Next\-Send\-Packet}}
\index{create\-Next\-Send\-Packet@{create\-Next\-Send\-Packet}!CPacketBuilder@{\-C\-Packet\-Builder}}
\subsubsection[{create\-Next\-Send\-Packet}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-N\-Packet\-Source\-::\-E\-Payload\-Info} \-C\-Packet\-Builder\-::create\-Next\-Send\-Packet (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{classCPacketBuilder_a7f85bf7867f191dd3b70c96b7fa1c12b}
\hypertarget{classCPacketBuilder_a83f920ecd9efcf50d53411a4eb346249}{
\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!get\-Bit@{get\-Bit}}
\index{get\-Bit@{get\-Bit}!CPacketBuilder@{\-C\-Packet\-Builder}}
\subsubsection[{get\-Bit}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-I\-Ext\-Bit\-Source\-::\-E\-Bit\-Value} \-C\-Packet\-Builder\-::get\-Bit (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{classCPacketBuilder_a83f920ecd9efcf50d53411a4eb346249}
bit from protocol layer to embedding-\/engine for embedding. 

\-Implements \hyperlink{classIExtBitSource_a8fe40c2c08399cbc557c94cc4a2c33d7}{\-I\-Ext\-Bit\-Source}.

\hypertarget{classCPacketBuilder_ab50a7766db2735cdea1206cfe62d979a}{
\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!get\-Max\-Frame\-Length@{get\-Max\-Frame\-Length}}
\index{get\-Max\-Frame\-Length@{get\-Max\-Frame\-Length}!CPacketBuilder@{\-C\-Packet\-Builder}}
\subsubsection[{get\-Max\-Frame\-Length}]{\setlength{\rightskip}{0pt plus 5cm}unsigned int \-C\-Packet\-Builder\-::get\-Max\-Frame\-Length (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{classCPacketBuilder_ab50a7766db2735cdea1206cfe62d979a}
get maximum number of bits which are possible between two preambles 

\-Implements \hyperlink{classIExtBitSource_abf48cd81d8bb68d2361dc44975365afc}{\-I\-Ext\-Bit\-Source}.

\hypertarget{classCPacketBuilder_a01cabb7ef3a4a759ba4f47748451bd19}{
\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!operator=@{operator=}}
\index{operator=@{operator=}!CPacketBuilder@{\-C\-Packet\-Builder}}
\subsubsection[{operator=}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-C\-Packet\-Builder}\& \-C\-Packet\-Builder\-::operator= (
\begin{DoxyParamCaption}
\item[{const {\bf \-C\-Packet\-Builder} \&}]{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{classCPacketBuilder_a01cabb7ef3a4a759ba4f47748451bd19}
\hypertarget{classCPacketBuilder_a23dc1c4a72fd2fc79ecd0fb6f2fc0569}{
\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!put\-Bit@{put\-Bit}}
\index{put\-Bit@{put\-Bit}!CPacketBuilder@{\-C\-Packet\-Builder}}
\subsubsection[{put\-Bit}]{\setlength{\rightskip}{0pt plus 5cm}void \-C\-Packet\-Builder\-::put\-Bit (
\begin{DoxyParamCaption}
\item[{bool}]{p\-Bit\-Value, }
\item[{bool}]{p\-First\-Bit}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{classCPacketBuilder_a23dc1c4a72fd2fc79ecd0fb6f2fc0569}
bit from stego-\/stream to protocol layer. this methode will be called by a embedding engine after extracting a bit.


\begin{DoxyParams}{\-Parameters}
{\em p\-Bit\-Value} & \-Value which should be stored \\
\hline
{\em p\-First\-Bit} & \-Is true if it is the first bit after the preamble \\
\hline
\end{DoxyParams}


\-Implements \hyperlink{classIExtBitSource_ac83be51f35b433c4357f410d6795bc73}{\-I\-Ext\-Bit\-Source}.

\hypertarget{classCPacketBuilder_a9c1f2a51958c83e346295d47d3eaf13d}{
\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!read\-Byte\-From\-Bool\-Vector@{read\-Byte\-From\-Bool\-Vector}}
\index{read\-Byte\-From\-Bool\-Vector@{read\-Byte\-From\-Bool\-Vector}!CPacketBuilder@{\-C\-Packet\-Builder}}
\subsubsection[{read\-Byte\-From\-Bool\-Vector}]{\setlength{\rightskip}{0pt plus 5cm}bool \-C\-Packet\-Builder\-::read\-Byte\-From\-Bool\-Vector (
\begin{DoxyParamCaption}
\item[{std\-::vector$<$ bool $>$ \&}]{p\-Vector, }
\item[{unsigned int}]{p\-Start\-Index, }
\item[{unsigned char \&}]{p\-Byte\-Value}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{classCPacketBuilder_a9c1f2a51958c83e346295d47d3eaf13d}
\hypertarget{classCPacketBuilder_a0aecfdc83b0950d099668943b653d6d7}{
\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!read\-Bytes\-From\-Bool\-Vector@{read\-Bytes\-From\-Bool\-Vector}}
\index{read\-Bytes\-From\-Bool\-Vector@{read\-Bytes\-From\-Bool\-Vector}!CPacketBuilder@{\-C\-Packet\-Builder}}
\subsubsection[{read\-Bytes\-From\-Bool\-Vector}]{\setlength{\rightskip}{0pt plus 5cm}unsigned int \-C\-Packet\-Builder\-::read\-Bytes\-From\-Bool\-Vector (
\begin{DoxyParamCaption}
\item[{std\-::vector$<$ bool $>$ \&}]{p\-Vector, }
\item[{unsigned int}]{p\-Start\-Index, }
\item[{void $\ast$}]{p\-Bytes, }
\item[{unsigned int}]{p\-Length}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{classCPacketBuilder_a0aecfdc83b0950d099668943b653d6d7}
\hypertarget{classCPacketBuilder_a7a00dcb89b6af5670e6865b00cb0f8ca}{
\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!write\-Byte\-To\-Bool\-Vector@{write\-Byte\-To\-Bool\-Vector}}
\index{write\-Byte\-To\-Bool\-Vector@{write\-Byte\-To\-Bool\-Vector}!CPacketBuilder@{\-C\-Packet\-Builder}}
\subsubsection[{write\-Byte\-To\-Bool\-Vector}]{\setlength{\rightskip}{0pt plus 5cm}bool \-C\-Packet\-Builder\-::write\-Byte\-To\-Bool\-Vector (
\begin{DoxyParamCaption}
\item[{std\-::vector$<$ bool $>$ \&}]{p\-Vector, }
\item[{unsigned int}]{p\-Start\-Index, }
\item[{unsigned char}]{p\-Byte\-Value}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{classCPacketBuilder_a7a00dcb89b6af5670e6865b00cb0f8ca}


\subsection{\-Member \-Data \-Documentation}
\hypertarget{classCPacketBuilder_aa4c1bff0467b28622b8c6133deb4b69d}{
\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!m\-Config@{m\-Config}}
\index{m\-Config@{m\-Config}!CPacketBuilder@{\-C\-Packet\-Builder}}
\subsubsection[{m\-Config}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-C\-Properties\-Reader}$\ast$ {\bf \-C\-Packet\-Builder\-::m\-Config}\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{classCPacketBuilder_aa4c1bff0467b28622b8c6133deb4b69d}
\hypertarget{classCPacketBuilder_a5377d2447dd5b25a67c379248babc5ca}{
\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!m\-Error@{m\-Error}}
\index{m\-Error@{m\-Error}!CPacketBuilder@{\-C\-Packet\-Builder}}
\subsubsection[{m\-Error}]{\setlength{\rightskip}{0pt plus 5cm}bool {\bf \-C\-Packet\-Builder\-::m\-Error}\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{classCPacketBuilder_a5377d2447dd5b25a67c379248babc5ca}
\hypertarget{classCPacketBuilder_ab84ca95996b25526f36866ac5ae0f588}{
\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!m\-Ignore\-Wrong\-C\-R\-C@{m\-Ignore\-Wrong\-C\-R\-C}}
\index{m\-Ignore\-Wrong\-C\-R\-C@{m\-Ignore\-Wrong\-C\-R\-C}!CPacketBuilder@{\-C\-Packet\-Builder}}
\subsubsection[{m\-Ignore\-Wrong\-C\-R\-C}]{\setlength{\rightskip}{0pt plus 5cm}bool {\bf \-C\-Packet\-Builder\-::m\-Ignore\-Wrong\-C\-R\-C}\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{classCPacketBuilder_ab84ca95996b25526f36866ac5ae0f588}
\hypertarget{classCPacketBuilder_a5c5962a8091ba05b589b8788cd002ece}{
\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!m\-Max\-Payload@{m\-Max\-Payload}}
\index{m\-Max\-Payload@{m\-Max\-Payload}!CPacketBuilder@{\-C\-Packet\-Builder}}
\subsubsection[{m\-Max\-Payload}]{\setlength{\rightskip}{0pt plus 5cm}unsigned int {\bf \-C\-Packet\-Builder\-::m\-Max\-Payload}\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{classCPacketBuilder_a5c5962a8091ba05b589b8788cd002ece}
\hypertarget{classCPacketBuilder_abad2cce898f78d8c38fdb0b873f00dbb}{
\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!m\-Packet\-Source@{m\-Packet\-Source}}
\index{m\-Packet\-Source@{m\-Packet\-Source}!CPacketBuilder@{\-C\-Packet\-Builder}}
\subsubsection[{m\-Packet\-Source}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-I\-Packet\-Source}$\ast$ {\bf \-C\-Packet\-Builder\-::m\-Packet\-Source}\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{classCPacketBuilder_abad2cce898f78d8c38fdb0b873f00dbb}
\hypertarget{classCPacketBuilder_aaf25ffd0b42977833b58e2d6a9e395ea}{
\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!m\-Recv\-Bit\-Count@{m\-Recv\-Bit\-Count}}
\index{m\-Recv\-Bit\-Count@{m\-Recv\-Bit\-Count}!CPacketBuilder@{\-C\-Packet\-Builder}}
\subsubsection[{m\-Recv\-Bit\-Count}]{\setlength{\rightskip}{0pt plus 5cm}unsigned int {\bf \-C\-Packet\-Builder\-::m\-Recv\-Bit\-Count}\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{classCPacketBuilder_aaf25ffd0b42977833b58e2d6a9e395ea}
\hypertarget{classCPacketBuilder_a3d8ef51647f24a933a743ec2258fc008}{
\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!m\-Recv\-Bit\-Index@{m\-Recv\-Bit\-Index}}
\index{m\-Recv\-Bit\-Index@{m\-Recv\-Bit\-Index}!CPacketBuilder@{\-C\-Packet\-Builder}}
\subsubsection[{m\-Recv\-Bit\-Index}]{\setlength{\rightskip}{0pt plus 5cm}unsigned int {\bf \-C\-Packet\-Builder\-::m\-Recv\-Bit\-Index}\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{classCPacketBuilder_a3d8ef51647f24a933a743ec2258fc008}
\hypertarget{classCPacketBuilder_a84bca46dfb8d1488d52b3c5534c986a0}{
\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!m\-Recv\-Packet@{m\-Recv\-Packet}}
\index{m\-Recv\-Packet@{m\-Recv\-Packet}!CPacketBuilder@{\-C\-Packet\-Builder}}
\subsubsection[{m\-Recv\-Packet}]{\setlength{\rightskip}{0pt plus 5cm}std\-::vector$<$bool$>$ {\bf \-C\-Packet\-Builder\-::m\-Recv\-Packet}\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{classCPacketBuilder_a84bca46dfb8d1488d52b3c5534c986a0}
\hypertarget{classCPacketBuilder_a932a4a895d4bedb9b1c981714c481c55}{
\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!m\-Recv\-Payload\-Length@{m\-Recv\-Payload\-Length}}
\index{m\-Recv\-Payload\-Length@{m\-Recv\-Payload\-Length}!CPacketBuilder@{\-C\-Packet\-Builder}}
\subsubsection[{m\-Recv\-Payload\-Length}]{\setlength{\rightskip}{0pt plus 5cm}unsigned int {\bf \-C\-Packet\-Builder\-::m\-Recv\-Payload\-Length}\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{classCPacketBuilder_a932a4a895d4bedb9b1c981714c481c55}
\hypertarget{classCPacketBuilder_ad20f0d602233bceb8f739e59cd435953}{
\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!m\-Recv\-State@{m\-Recv\-State}}
\index{m\-Recv\-State@{m\-Recv\-State}!CPacketBuilder@{\-C\-Packet\-Builder}}
\subsubsection[{m\-Recv\-State}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-E\-Recv\-Packet\-State} {\bf \-C\-Packet\-Builder\-::m\-Recv\-State}\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{classCPacketBuilder_ad20f0d602233bceb8f739e59cd435953}
\hypertarget{classCPacketBuilder_af20c05841f12ae9386e7817bf9d794b9}{
\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!m\-Send\-Bit\-Count@{m\-Send\-Bit\-Count}}
\index{m\-Send\-Bit\-Count@{m\-Send\-Bit\-Count}!CPacketBuilder@{\-C\-Packet\-Builder}}
\subsubsection[{m\-Send\-Bit\-Count}]{\setlength{\rightskip}{0pt plus 5cm}unsigned int {\bf \-C\-Packet\-Builder\-::m\-Send\-Bit\-Count}\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{classCPacketBuilder_af20c05841f12ae9386e7817bf9d794b9}
\hypertarget{classCPacketBuilder_ab1aa160f71acd51cf7be170454b46416}{
\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!m\-Send\-Bit\-Index@{m\-Send\-Bit\-Index}}
\index{m\-Send\-Bit\-Index@{m\-Send\-Bit\-Index}!CPacketBuilder@{\-C\-Packet\-Builder}}
\subsubsection[{m\-Send\-Bit\-Index}]{\setlength{\rightskip}{0pt plus 5cm}unsigned int {\bf \-C\-Packet\-Builder\-::m\-Send\-Bit\-Index}\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{classCPacketBuilder_ab1aa160f71acd51cf7be170454b46416}
\hypertarget{classCPacketBuilder_a441cf84e62698c8a0303083ab18dbb45}{
\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!m\-Send\-Packet@{m\-Send\-Packet}}
\index{m\-Send\-Packet@{m\-Send\-Packet}!CPacketBuilder@{\-C\-Packet\-Builder}}
\subsubsection[{m\-Send\-Packet}]{\setlength{\rightskip}{0pt plus 5cm}std\-::vector$<$bool$>$ {\bf \-C\-Packet\-Builder\-::m\-Send\-Packet}\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{classCPacketBuilder_a441cf84e62698c8a0303083ab18dbb45}
\hypertarget{classCPacketBuilder_a134cb0e013ddf5ad34fbd9fe204ae632}{
\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!m\-Send\-Payload\-Info@{m\-Send\-Payload\-Info}}
\index{m\-Send\-Payload\-Info@{m\-Send\-Payload\-Info}!CPacketBuilder@{\-C\-Packet\-Builder}}
\subsubsection[{m\-Send\-Payload\-Info}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-N\-Packet\-Source\-::\-E\-Payload\-Info} {\bf \-C\-Packet\-Builder\-::m\-Send\-Payload\-Info}\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{classCPacketBuilder_a134cb0e013ddf5ad34fbd9fe204ae632}
\hypertarget{classCPacketBuilder_aab69009e195d44e0bb8776285f17d277}{
\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!m\-Send\-Payload\-Length@{m\-Send\-Payload\-Length}}
\index{m\-Send\-Payload\-Length@{m\-Send\-Payload\-Length}!CPacketBuilder@{\-C\-Packet\-Builder}}
\subsubsection[{m\-Send\-Payload\-Length}]{\setlength{\rightskip}{0pt plus 5cm}unsigned int {\bf \-C\-Packet\-Builder\-::m\-Send\-Payload\-Length}\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{classCPacketBuilder_aab69009e195d44e0bb8776285f17d277}
\hypertarget{classCPacketBuilder_a19b5eca0e74948e53cf55568ccddce8a}{
\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!m\-Send\-State@{m\-Send\-State}}
\index{m\-Send\-State@{m\-Send\-State}!CPacketBuilder@{\-C\-Packet\-Builder}}
\subsubsection[{m\-Send\-State}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-E\-Send\-Packet\-State} {\bf \-C\-Packet\-Builder\-::m\-Send\-State}\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{classCPacketBuilder_a19b5eca0e74948e53cf55568ccddce8a}
\hypertarget{classCPacketBuilder_ad11538f861ae424701c94713341af1a1}{
\index{\-C\-Packet\-Builder@{\-C\-Packet\-Builder}!s\-Ini\-Section@{s\-Ini\-Section}}
\index{s\-Ini\-Section@{s\-Ini\-Section}!CPacketBuilder@{\-C\-Packet\-Builder}}
\subsubsection[{s\-Ini\-Section}]{\setlength{\rightskip}{0pt plus 5cm}const std\-::string {\bf \-C\-Packet\-Builder\-::s\-Ini\-Section} = \char`\"{}\-P\-A\-C\-K\-E\-T\-\_\-\-B\-U\-I\-L\-D\-E\-R\char`\"{}\hspace{0.3cm}{\ttfamily  \mbox{[}static, private\mbox{]}}}}
\label{classCPacketBuilder_ad11538f861ae424701c94713341af1a1}


\-The documentation for this class was generated from the following files\-:\begin{DoxyCompactItemize}
\item 
\hyperlink{packet__builder_8h}{packet\-\_\-builder.\-h}\item 
\hyperlink{packet__builder_8cxx}{packet\-\_\-builder.\-cxx}\end{DoxyCompactItemize}
